Simplified synchronization through optimistic linearizability

نویسندگان

  • Maurice Herlihy
  • Eric Koskinen
چکیده

We explore a novel programming model for multicore architectures in which shared data-structures are replicated per-thread. With a suitable mechanism for broadcasting data-structure operations (which may be wait-free or lock-free) there is no longer a need for elaborate, datastructure-specific synchronization (e.g. as seen in java.util.concurrent) at each replica. Moreover, threads can lazily apply the broadcast operations on an as-needed basis. In this position paper, we provide a formal semantics for this programming model but have not yet explored the practical viability of the approach. Nonetheless, previous work seems to indicate that replication, at least in the context of operating system internals, can yield performance improvement [1].

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

An Optimistic Protocol for a Linearizable Distributed Shared Memory System

Recently, distributed shared memory systems have received much attention because such an abstraction simpliies programming. In this paper , we present a simple protocol which implements the linearizability consistency criterion in a distributed shared memory system. Unlike previously implemented protocols, our protocol is based on an optimistic approach. The protocol eliminates the necessity of...

متن کامل

Towards Automatic Lock Removal for Scalable Synchronization

We present a code transformation for concurrent data structures, which increases their scalability without sacrificing correctness. Our transformation takes lock-based code and replaces some of the locking steps therein with optimistic synchronization in order to reduce contention. The main idea is to have each operation perform an optimistic traversal of the data structure as long as no shared...

متن کامل

Model Checking of Linearizability of Concurrent List Implementations

Concurrent data structures with fine-grained synchronization are notoriously difficult to implement correctly. The difficulty of reasoning about these implementations does not stem from the number of variables or the program size, but rather from the large number of possible interleavings. These implementations are therefore prime candidates for model checking. We introduce an algorithm for ver...

متن کامل

Relaxing real-time order in opacity and linearizability

In this paper we introduce two families of safety properties: ♦-opacity and ♦linearizability. The new properties relax to various degree the real-time order requirement on transaction execution in opacity and, analogically, the real-time order requirement on operation execution in linearizability. This way we can formalize the guarantees provided by a wide class of strongly consistent replicate...

متن کامل

Experiences With Optimistic Synchronization For Distributed Operating Systems

Optimistic synchronization is a method of synchronizing parallel and distributed computations without the use of blocking. When non-optimistic systems would block, optimistic synchronization mechanisms permit operations to go ahead. If such optimism causes improper synchronization, the mis-synchronized work is undone and the entire system restored to a consistent state. This paper discusses the...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2010